/**
 * 
 */
package org.blade.personal.component.listener;

import org.blade.personal.mode.BaseEntity;

/**
 * @author blade
 *
 */
public interface IEntityListener<T extends BaseEntity<ID>, ID> {

	// @PostLoad
	public void postLoad(BaseEntity<ID> entity);

	// @PrePersist
	public void prePersist(BaseEntity<ID> entity);

	// @PostPersist
	public void postPersist(BaseEntity<ID> entity);

	// @PreUpdate
	public void preUpdate(BaseEntity<ID> entity);

	// @PostUpdate
	public void postUpdate(BaseEntity<ID> entity);

	// @PreRemove
	public void preRemove(BaseEntity<ID> entity);

	// @PostRemove
	public void postRemove(BaseEntity<ID> entity);
}
